System and method for enhanced lookup in an online dictionary

ABSTRACT

A system and method predictively generates words based on a user input, according to a frequency of lookup of each of the generated words. The system and method also allows for a user to add predictively generated words to a word list that assists in the facilitation of word and vocabulary comprehension for a user. Words in the online dictionary are grouped in word families where a user can navigate between different forms of a root word.

FIELD OF THE INVENTION

The present invention relates to a system and method for querying adefinition of a word in an online dictionary. The present inventionfurther relates to a system and method for predictively looking up aword by generating a results display of words based on a partial userinput. The present invention further relates to a system and method forcombining words in an online interface into word families that representdifferent forms of a root word.

BACKGROUND INFORMATION

The convenience of online dictionaries is that they allow for a user tolook up the definition of a desired word directly on the user'scomputer, without resorting to having to use a physical dictionary. Auser can type a word into an online dictionary and a definition for thatword can be generated and output to the user if the word exists (i.e.,the word is a valid word). While previous implementations of onlinedictionaries have been useful, they are also antiquated. Previous onlinedictionaries require that a user search for a definition based on aninput of an entire word. This can be problematic in instances in whichthe user does not know the entire word the user is looking up or doesnot know the actual correct spelling of the world. An incorrect spellingof a desired word usually results in no definition being generated forpresentation to the user.

There may also be instances in which the user knows a definition thatthe user would like to convey, but does not know an applicable word forconveying that thought. Online dictionaries do not provide for a user tolook up a word based on a definition or a partially known definition.Online dictionaries only allow for a user to input specific words togenerate the output definitions.

There may also be instances where a user knows to use a variation of agiven word, but the variation of the word is not defined by the onlinedictionary. For example, a user may have knowledge of the definition ofa given verb, but may wish to use an adverb in a certain context. If auser inputs the adverb into an online dictionary, the user may insteadget the definition of the root verb. The online dictionary may indicateto the user that an adverb may be formulated based on the root verb, butmay not provide a definition for the adverb. For example, a user maywant to know the definition of the adverb “knowingly.” A user who enters“knowingly” into the online dictionary is given a definition for eitherthe verb “know” or the adjective “knowing.” Both the generateddefinitions of “know” and “knowing” may indicate to the user that anadverb “knowingly” may be formulated based on the words “know” and“knowing,” but the online dictionaries do not provide a definition of“knowingly” nor allow the user to see how the word “knowingly” relatesto the verb “know” and the adjective “knowing.”

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an online dictionary program, according toan example embodiment of the present invention.

FIG. 2 is a screenshot of a results display of an interface of an onlinedictionary program, according to an example embodiment of the presentinvention.

FIG. 3 is an internally generated tree of an example word family,according to an example embodiment of the present invention.

FIG. 4 is a screenshot of a displayed word family in the onlinedictionary program, according to an example embodiment of the presentinvention.

FIG. 5 is a screenshot of an interface of an online dictionary program,when a word is being added from a results display list, according to anexample embodiment of the present invention.

FIG. 6 is a screenshot of an interface of an online dictionary programusing an advanced search function, according to an example embodiment ofthe present invention.

DETAILED DESCRIPTION

Example embodiments of the present invention provide an onlinedictionary that predictively looks up and generates a display list ofwords based on a partial input of a word by a user, or based on an inputof a definition of a word.

Example embodiments of the present invention provide an onlinedictionary that combines words of an online dictionary into wordfamilies that allows a user to navigate between different variations ofa root word.

Example embodiments of the present invention provide an onlinedictionary, in which a system and/or method predictively generates wordsbased on a user input according to a frequency of lookup of each of thegenerated words. The system and method also allows for a user to addpredictively generated words to a word list that assists in theenhancement of word and vocabulary comprehension for a user. In exampleembodiments, words in the online dictionary are grouped in word familieswhere a user can toggle between different forms of a root word.

According to an example embodiment of the present invention, a systemand method automatically generates for output a list of predictive wordsbased on a user input, with each of the generated predictive words beingordered based on a frequency of lookup in a corpus of the onlinedictionary. Each of the predictive words displays may also be displayedwith a primary definition of the generated predictive word.

According to an example embodiment of the present invention, a systemand method may allow for a user to add to a word list a predictive wordfrom the generated list of predictive words based on the user's input.Individual word lists may be made public or private, and a user maymaintain multiple word lists.

According to an example embodiment of the present invention, a systemand method may provide for a user to search for a word based on anadvanced search function, where a user may search for a word andcorresponding definition based on a part of speech, a synonym, anantonym, a definition, the beginning of a word, and other possiblecriteria. The system and method may further provide for the user tocombine multiple search attributes.

According to an example embodiment of the present invention, a systemand method may provide for words in the online dictionary to be combinedinto word families that represent variations of a given root word in theonline dictionary. A user can navigate between different members of theword families to lookup meanings for other members of the word family.

FIG. 1 illustrates a diagram of a terminal 10 displaying a userinterface of online dictionary program 20 stored in a memory 15,accessible by a processor 30, according to an example embodiment of thepresent of the present invention. Online dictionary program 20 may beexecuted by processor 30 to display output on terminal 10. Terminal 10may be a computer monitor, or any other display device which may depictoutput of online dictionary program 20 during execution.

Processor 30 may be implemented using any conventional processingcircuit and device or combination thereof, e.g., a Central ProcessingUnit (CPU) of a Personal Computer (PC) or other workstation processor,to execute code provided, e.g., on a hardware computer-readable mediumincluding any conventional memory device, to perform any of the methodsdescribed herein, alone or in combination. Processor 30 may also beembodied in a server or user terminal or combination thereof

The components of FIG. 1 may be embodied in, for example, a desktop,laptop, hand-held device, Personal Digital Assistant (PDA), televisionset-top Internet appliance, mobile telephone, smart phone, etc., or as acombination of one or more thereof. The memory 15 may include anyconventional permanent and/or temporary memory circuits or combinationthereof, a non-exhaustive list of which includes Random Access Memory(RAM), Read Only Memory (ROM), Compact Disks (CD), Digital VersatileDisk (DVD), and magnetic tape.

An example embodiment of the present invention is directed to one ormore hardware computer-readable media, e.g., as described above, havingstored thereon instructions executable by processor 30 to perform themethods described herein.

An example embodiment of the present invention is directed to a method,e.g., of a hardware component or machine, of transmitting instructionsexecutable by processor 30 to perform the methods described herein.

Various methods and embodiments described herein may be practicedseparately or in combination.

Online dictionary program 20 may contain a comprehensive list of words,with each word having a primary definition and may also containadditional definitions for the given word. A primary definition for aword may correspond to the most frequently used meaning of a given word.The “frequency of use” for a given word may be determined by analyzingthe use of a word in a corpus of sentences from obtained text. Inexample embodiments, the obtained text may be content retrieved fromonline sources.

In an example embodiment, online dictionary program 20 may obtain textfrom existing Internet content sources. For example, a server for onlinedictionary program 20 may be subscribed to web content syndication (RSS)feeds, such as RDF Site Summary, Rich Site Summary, or Really SimpleSyndication feeds, of major newspapers and periodicals, and may use textfrom such feeds to determine a most frequently used definition of agiven word.

Internet articles obtained, for example from RSS feeds, typically takethe form of a Hyper Text Markup Language (HTML) document. In an exampleembodiment of the present invention, the system and method parses theHTML document into an eXtensible Markup Language (XML) Document ObjectModel (DOM), which may be examined to determine how often a specificword appears in the obtained text, e.g., to determine a “frequency ofappearance” of each of the words, where the words are counted for allinstances in which they appear, for all definitions of the word.

The system and method may also provide for determining how often a wordis used in the corpus of the online text using a particular definitionof the word. A determination by the system of how often of a word isused in the context of a particular definition, may constitute thefrequency of use for that specific definition of the word. A definitionthat has a highest frequency of use for a word, i.e., the word appearsmost often in the corpus of sentences with that definition of the word,may be set as the primary definition of the word.

FIG. 2 is a screen shot of an example interface of online dictionaryprogram 20, according to an example embodiment of the present invention.A user may input a partial input, e.g., including one or morecharacters, into an input search field 100, generating a results displaylist 110 as shown in FIG. 2, e.g., corresponding to words that beginwith the input characters. The words listed in display list 110 maycorrespond to words most likely to be looked up by the user based on thepartial user input. Words most likely to be looked up may be determinedby the “frequency of lookup” for definitions of the words starting withthe input characters.

A frequency of lookup may be determined for every word in onlinedictionary program 20. The system and method of the present inventionmay record and maintain a count for every instance a user enters astring matching a given word, i.e., a user looks up a given word. Thefrequency of lookup for each word may be stored in the system and may beupdated every time the designated word is looked up.

When a user inputs a partial input into the search field 100, theresults display list 110 generated may display words beginning with thepartial input of the user. The system and method of the presentinvention may be configured to display words with the highest frequencyof lookup at the top of the generated list. In an example embodiment,the results display list 110 may output the most frequently looked upwords in descending order, with the word with the highest frequency oflookup listed at the top of results display list 110. Results displaylist 110 may be a scrollable list, with only a portion of the list,e.g., a predetermined fixed number of words at a time, being displayedto the user at a given time. Alternatively, the system may be configuredto display at any one given time as many words as fit into an areadesignated for display of the list of words, the size of which area maydepend on the amount of other information to be provided in othersections of the interface as described below. A user may scroll downthrough the list to display the words having been less frequently lookedup than those initially displayed. As the user scrolls down the list,additional words may be obtained and displayed dynamically,corresponding to the next most frequently looked up words, until theuser reaches the end of the list and has exhausted all possible wordsbeginning with the partial input. The words at the bottom of the resultdisplay 110 may correspond to the words that have the lowest frequencyof lookup.

Each of the words in the results display list 110 may be displayed alongwith a primary definition for the word. The primary definition may bedisplayed adjacent to the word as illustrated in FIG. 2.

For example, the results display list 110 may visually display fivewords at a time, based on the user input into search field 100. The topfour words on the list may correspond to the four words with the highestfrequency of lookup that start with the user input. The word with thehighest frequency of lookup may be at the top of results display list110, and the word with the second highest frequency of lookup may bedisplayed second on the results display list 110, immediately beneaththe word with the highest frequency of lookup. The word with the thirdhighest frequency of lookup may be displayed in the results display listimmediately beneath the word with the second highest frequency oflookup. The word with the fourth highest frequency of lookup may bedisplayed immediately beneath the word with the third highest frequencyof lookup. If a user scrolls down through the results display list 110,the next most looked up words may be obtained and displayed to the user.

For example, referring to the interface illustrated in FIG. 2, a usermay input a word starting with the letter “n” into search field 100.After the letter “n” has been input to search field 100, results displaylist 110 may be generated. The word “naïve” may be displayed at the topof results display list 110. In this example, the word “naïve” mayrepresent the word with the highest frequency of lookup for words thatbegin with the letter “n.” The word “nostalgia” may be displayed below“naïve” and may represent the second most looked up word that beginswith the letter “n.” The word “niche” may be displayed below “nostalgia”and may represent the third most looked up word that begins with theletter “n,” whereas the word “nostalgic” may represent the fourth mostlooked up word that begins with the letter “n” and may be displayedbelow “niche” in results display list 110.

Results display list 110 may include a separate section for display of aword based on an alphabetical sort. The section may be displayed, forexample, beneath the list of words that are sorted based on look-upfrequency. For example, in FIG. 2, the section appears immediatelybeneath the first four listed words, and contains a fifth visuallydisplayed word that may be displayed to the user. The system and methodmay alphabetically sort the words stored in the system, and the word,e.g., the fifth word in the illustrated interface, that is included inthe second section of results display list 110 may be one that mostclosely matches the user partial input based on the alphabetical sort.In the example where a user inputs the letter “n” into search field 100,the system and method may output a word in the results display that isclosest alphabetically to the input letter. In this instance, this maycorrespond to the 14^(th) character of the Roman alphabet “n,” which isalphabetically identical to the partial input by the user. In an exampleembodiment, if a user scrolls through result display 110, the system maydynamically change the words displayed in the first section at the topof results display list 110, e.g., the first four displayed words, butmay leave the word displayed in the second section, e.g., the fifthword, corresponding to the closest alphabetic match, unchanged.

When a user inputs an additional character into input search field 100,the results in result display 110 may be dynamically updated. Resultsdisplay list 110 may correspond to new words that begin with the newpartial input and the words listed in display list 110 may correspond towords most likely to be looked up by the user based on the new userinput, and the word being a closest match, by alphabetic sort, to thenew partial word string. The new words presented in results display list110 may be displayed adjacent to their primary definition.

Results display list 110 may output the most frequently looked up wordscontaining the new user input in descending order, with the word withthe highest frequency of lookup for the new user input listed at the topof results display list 110. A user may again scroll down through thelist, with words in descending order of frequency of lookup, until theuser reaches the bottom of the result display 110 which corresponds tothe words that have the lowest frequency of lookup for the new userinput.

In an example embodiment of the present invention, where the words ofthe first section, e.g., the top four words, of the results display list110 correspond to the most frequently looked up words with the new userinput, these four words may change each time the user inputs anotherletter or character into search field 100. The word with the highestfrequency of lookup for a new user input may be output to the top ofresults display list 110, with the subsequent highest frequency lookupwords for the new user input listed consecutively below it. A word ofthe second section of the results display list 100, e.g., the fifthdisplayed word, may be the word that most closely matches the new userinput alphabetically. When a user scrolls through results display list110, the words of the first section, e.g., the first four displayedwords, may change to the next most frequently looked up words with thenew user input, while the word of the second section, e.g., the fifthdisplayed word, may remain the same.

For example, where a user has already input the letter “n” into searchfield 100, the letter “o” may be subsequently input. Input search fieldmay now contain the string “no.” Results display list 110 may begenerated for this string, which will be updated from the previousresults display list for the letter “n.” The word “naïve,” previouslyoutput by the system as the most looked up word starting with the letter“n,” may no longer be listed in results display list, as “naïve” doesnot begin with the string “no.” The word “nostalgia,” which waspreviously the second most frequently looked up word beginning with thepartial input “n,” may now be the most frequently looked up workbeginning with the string “no.” The word “niche” may also be removedfrom the results display list 110, as the word does not begin with thestring “no.” “Nostalgic” may now be the second most frequently looked upword for the inputted string “no” and may be displayed below “nostalgia”in results display list 110.

New words may be generated and visually displayed under “nostalgia” and“nostalgic” for the third and fourth most frequently looked up wordsbeginning with “no.” Additionally, a new word may be output for thefifth visually displayed word, corresponding to a word that most closelymatches the new user input. In this example, the string “no” has nowbeen entered into search field 100, the system and method may output anew word that is closest alphabetically to the string. Presumably, inthis case, the adverb “no,” meaning a function word to express thenegative of an alternative choice or possibility, which isalphabetically identical to the new input by the user, may be displayedas the fifth visually displayed word in results display list 110. If auser scrolls through result display 110, the first four words visuallydisplayed at the top of results display list 110 may dynamically changeto the next four most frequently looked up words. The fifth visuallydisplayed word, corresponding to the closest alphabetic match of “no,”may remain the same as the input by the user has not changed sinceentering the letter “o” into search field 100.

The system and method may dynamically change results in result display110 every time an additional character is inserted into input searchfields 100, where the additional character causes a change to the listof most frequently looked up words and/or the closest alphabeticallymatched word. Results display list 110 may dynamically change to displaynew words that begin with the changed user input most likely to belooked up, and visually displayed word that most closely matches theinput alphabetically.

In an example embodiment of the present invention, the system and methodmay display the full definition of the most frequently looked up wordfor a user input in definition area 120 of the interface of onlinedictionary program 20. Area 120 may list the most frequently looked upword and a complete primary definition of the word and alternatedefinitions of the word, as well as a part of speech of the word.Definition area 120 may also provide for a paragraph which explains thedefinition, etymology, and the usage examples in which the mostfrequently looked up word may be used. The interface of onlinedictionary program 20 may also visually display a listing 150,displaying in reverse chronological order, the most recent sentencesfrom the corpus of sentences from obtained text from the online sourcesusing the most frequently looked up word. In an example embodiment, onlythree of the most recent sentences are shown, but the user may hit“Next” for the display of another set of three sentences, each new setmoving further back in time, or the user may alternatively scrollthrough such sentences, new sentences being dynamically retrieved forpopulating the listing 150. In an example embodiment, as the systemreceives new feeds, the system may automatically and dynamically updatethe display to show the most recent sentences, without regard to userinput.

The system and method may output filter controls for filtering thesources of the sentences in listing 150. For example, the sources may befiltered to be limited to only news sources, medicine or sciencesources, sports sources, business sources, art or culture sources,fiction sources, or technology sources. As words may be used differentlyin various sources, allowing the user to filter the sources may help theuser understand how to use the word in a relevant context.

In an example embodiment of the present invention, the various displayedresult display 110 may be user-selected, in response to which selection,the system may update the definition area 120, the listing 150, and aword family box 140, described below to include information pertainingto the selected word, rather than information pertaining to the mostfrequently looked-up word.

In an example embodiment of the present invention, in response to a userinput scrolling instruction, to scroll the list of words of resultdisplay 110, such that the most frequently looked up word is no longerdisplayed in the result display 110, the system may update theinformation of the other sections of the interface to that correspondingto the most frequently looked up one of the words that remain displayedin the result display 110.

In an example embodiment of the present invention, the system mayprovide in the interface an “Add to list” button 130, e.g., displayedadjacent to the definition area 120, in response to selection of whichthe system may add the most frequently looked up word to a word list(described below). According to the example embodiment in which words ofthe result display 110 may be selected, if the user does select a wordof the result display 110 other than the most frequently looked up word,the system may, in response to the selection of the “Add to list” button130, add the selected word to the word list.

A user may also be provided a word family box 140 that may be displayedin the interface of the online dictionary program 20, e.g., adjacent tolisting 150 and definition area 120. Word family box 140 may display themost frequently looked up word as well as words in the word family thatmay be related to the most frequently looked up word. A word family mayinclude a root word and words stemming from the root word, such as wordsthat contain an prefix or suffix affixed to the root word. A user maynavigate between the different members of the word family displayed inword family box 140 and the related words, to look up the related words.

The system and method may generate a word family for each root word.FIG. 3 shows an internally generated tree of a word family generated forthe root word “twist,” which may be used to make a word family box 140for each of the words related to the root word. A root word may belisted at the top of the tree, as evidenced by FIG. 3, where the rootword “twist” is listed at the top of the tree. Directly underneath theroot word, each “child” may be listed as a node of the parent root word.A child of the root word may include any word that includes only oneprefix or suffix affixed to root word. In the example for the root word“twist,” the words “twisted,” “twister,” “twisting,” and “untwist” mayconstitute children of the root word.

One or more, e.g., each, of the immediate children in the word familymay have their own children, which may be grandchildren of the rootword. The grandchildren may descend directly from the nodescorresponding to the immediate children of the root word. Thegrandchildren may include words that include another prefix or suffix toa word that already includes one prefix or suffix appended to the rootword. For example, the words “twistedest” or “twistedly” may be childrento the word “twisted” and grandchildren to the root word “twist.”Similarly, the words “untwisted,” “untwisting,” and “untwists” may bechildren to the word “untwist” and grandchildren to “twist.”Subsequently, one or more, e.g., each, of the grandchildren may havechildren, which may be great-grandchildren to the root word, and so on.This may be repeated, e.g., until offshoots of the root word areexhausted.

If any of the words in the tree have any descendents (includingchildren, grandchildren, great-grandchildren, etc.), a number may berecorded, as shown listed to the left of the word in the tree; thisnumber may include the number of words in the group including therespective word and all of its descendents. For example, in FIG. 3, theroot word “twist” has fifteen descendents in the root tree, and thus thenumber 16 may be listed in association with the word in the tree. Thefrequency of appearance of each word may also be recorded in associationwith the words of the tree, as shown listed next to the word in thetree, representing the number of times the word exactly appears in thecorpus of obtained online text. The frequency of appearance of each wordcombined with the frequency of appearance of its descendents may also berecorded in association with the word, as shown listed next to the wordsin the tree, representing the number of times that either the word orits descendents appear in the corpus of obtained online text. Forexample, the word “untwist” may appear itself in the corpus of onlinetext 182 times. Since its children “untwisted,” “untwisting,” and“untwists” also appear in the corpus, the tree may indicate that“untwist” and all its descendents appear 742 times in the corpus. Thesystem may use the information regarding frequency of use as described,for example, in U.S. patent application Ser. No. 13/075,973, entitled“System and Method for Generating Questions and Multiple Choice Answersto Adaptively Aid in Word Comprehension,” and filed under AttorneyDocket No. 13212/10005, the entire contents of which is herebyincorporated herein by reference. In an alternative example embodiment,the system may record the number of times of use of the combination of aword and its children up to a predetermined number of hierarchicallevels removed from the respective word. Alternatively, the usage numbermay be based on other hierarchical organizations of the word familiesnot shown in FIG. 3.

Words of the tree that are listed, and for which a definition isprovided, in online dictionary program 20 may be considered “headwords.”The system may record which words of the tree are headwords, such wordsbeing shown in FIG. 3 marked with the letter “H.” Examples of headwordsfor the root word twist are “twist,” “twisted,” “twister,” “supertwist,”“twisting,” “untwist,” and “untwisted.” In many cases, headwords may bethe root word and its immediate children, although in some cases (suchas “supertwister” and “untwisted” shown in FIG. 3), grandchildren andother descendents may be headwords.

FIG. 4 shows a screen shot of a displayed word family box 140 in theinterface of the online dictionary program 20 for the “twist” family.Word family box 140 may illustrate the word family which is beingdisplayed. For example, in FIG. 4, word family box 140 may show that the“twist” word family is illustrated. Word family box 140 may illustratedifferent and distinct levels according to the tree structure in FIG. 3.A highest level may display the selected or looked up word at thatlevel. At the subsequent next highest level, if the selected word has aparent, i.e., it is not a root word, the parent of the selected word maybe represented, e.g., displayed and/or otherwise, along with all of thechildren of that parent. The children represented may include theselected word. For example, the second level of FIG. 4 shows the word“twisting” and also includes a representation of the word “twistingly.”If the selected word is a grandchild, the grandparent of the select wordmay be represented, e.g., displayed, at the next highest levelthereafter, along with the children (the selected word's parent andaunts and uncles) of the grandparent. Additional levels may be displayedfor earlier ancestors (great-grandparents, etc.).

For example, in FIG. 4, the word “twistingly” may be displayed at thehighest level (here, the third level) of word family box 140. The word“twistingly” is a child of the parent word “twisting.” Therefore, theword “twisting” may be represented, e.g., displayed, at a level belowthe word “twistingly” at the second level. The second level may includerepresentations of, e.g., display, the parent word “twisting” along withits children “twistingly,” “twistingest,” and “twistings.” Since“twistingly” is a grandchild of root word “twist,” a lowest level may bedisplayed containing representations of the root node “twist” and itschildren “twisted,” “twister,” “untwist,” and “twisting,” the last beingthe parent of the selected word “twistingly.”

Each level may be depicted by a bar that is divided into sectionscorresponding to each respective word at the respective level. Ininstances where only one word appears at a level, for example the word“twistingly” at highest level in FIG. 4, a single uniform bar may bedisplayed for the level. In an example embodiment of the presentinvention, the system may be configured to, for each level, base therespective percentages of the bar allocated for representation of therespective words of the level on the respective frequency of appearancefor each exact word (as opposed to the combination of frequencies of theword and its descendents) in the level, as recorded in the treerepresented in FIG. 3. If a word displayed in a given level has a lowfrequency of appearance in contrast to the other words in the level, theportion of the bar allocated for that word may be extremely small, sothat the represented word is not displayed. For example, in FIG. 4, notall of the children for the words “twisting” in the second level and“twist” in the first level are displayed in their representativesections of the respective bars.

In an example embodiment, in response to selection of a word, the systemand method may highlight the portion of the bar corresponding to theselected word and the bar portions corresponding to the parent of theselected word. In FIG. 4, the bar portion corresponding to the word“twistingly” is highlighted in the first and second levels, along withthe bar portions of its parent word “twisting” in the third level. Forexample, all portions representing the selected word may be highlighted,and, for each of the ancestors of the selected word, the bar portionrepresenting the ancestor at the highest hierarchical level, e.g., thelowest displayed bar, may be highlighted. For a selected word, thesystem may display a graphic showing a connection of each active graphportion to the active graph portion of the bar of the higherhierarchical level, e.g., in the form of a call-out type graphic, asshown in FIG. 4.

A word may be selected by selecting, e.g., via a point-and-click, arepresentative bar section of the word family box 140 or via interactionvia any other section of the interface. For example, selection may be byinput of the word in the input search field 100 and subsequent selectionof a “look it up” button, or by selection of one of the words of theresult display 110. The top listed word of the result display 110 mayinitially be considered selected by default. According to an exampleembodiment, when the user scrolls the listed words, so that the top wordin display changes, the remaining sections of the interface, includingthe word family box 140 may be correspondingly and dynamically changed.

In an example embodiment of the present invention, an intellisensefeature may be provided to notify a user how often a word appears. Auser may hover a pointer above a portion of a bar, and the system andmethod may output the frequency of appearance of the word correspondingto that portion of the bar. The system may refer to the relevantrecorded information described above with respect to FIG. 3 for outputof the frequency. The system and method may also convert the frequencyof appearance information to other types of information, such as howoften a word appears per some predefined limit, i.e., number of words ofobtained online text. For example, if a word appears 3,000 times in acorpus of 100,000 words, the system may output a ratio of 3/100. In analternative example embodiment, the system may output the frequency asthe number of times the word appears on a given page of text, e.g., theword “twisting” will appear on average once every 50 pages. For example,the system may be programmed with an equivalency of a certain number ofwords to a page, and may convert the number of times a word appears in acorpus of words to a page. Alternatively, the system may analyze pagebreaks and/or other page demarcations of received data, on the basis ofwhich analysis the system may output expected frequency of words perpage.

A user may navigate between the different members of the word familydisplayed in word family box 140 to look up the related words, byclicking on other words in the word family. In response to selecting,e.g., clicking, a bar portion corresponding to a different word thanthat which is currently selected, the system may change the layout ofword family box 140, where the newly selected word may be listed at thehighest bar level, and lower bar levels may correspond to the parent,grandparents, and earlier ancestors, if any, of the newly selected word.Word family box 140 may help a user understand a word by seeing thevarious forms of the word, how they relate to each other, and therelative frequencies of their use.

When a user selects a word from the results display list 110, the fulldefinition of the selected word may be displayed in definition area 120.In this instance, definition area 120 may list the selected word, acomplete primary definition of the word, alternate definitions, and apart of speech of the word. Definition area 120 may also include aparagraph which explains the definition, etymology, and the usageexamples in which the selected word may be used. Definition area 120 mayonly provide for the display of a definition of a headword. If theselected word is a headword, definition area 120 may display the primarydefinition of the selected word. In an embodiment, where the selectedword is not a headword, the system and method may search up thehierarchy for the parent of the lowest hierarchical level according tothe generated tree structure described with respect to FIG. 3, that is aheadword. The system may display in definition area 120 the definitionof the headword identified by the system.

As noted above, word family box 140 may display a word family of aselected word in accordance with the hierarchical relationships of theinternally generated tree for the word family. Listing 150 may alsodisplay the most recent sentences from the corpus of sentences fromobtained text from the online sources using the selected word. A usermay also add the selected word to a word list via button 130. When auser selects a word from the generated results display list 110, thesystem and method may record that the user looked up the selected word,and the frequency of lookup for the selected word may be incrementallyincreased by one. Similarly, in response to selection of the “look itup” button, the system may increment the look-up frequency of the wordin the input search field 100, if the string within the input searchfield 100 is a valid word. In other example embodiments, other types ofuser selections, e.g., via the interface shown in FIG. 2, may instead oradditionally cause the system to increment the recorded look-upfrequency of the respective word.

A user may also add any of the words from results display list 110 to auser-specific word list stored in association with a particular user.Such a word list is described, for example, in U.S. patent applicationSer. No. 13/075,973, entitled “System and Method for GeneratingQuestions and Multiple Choice Answers to Adaptively Aid in WordComprehension,” and filed under Attorney Docket No. 13212/10005. Theuser-specific word list may contain words that the user may be trying tolearn. FIG. 5 is a screen shot of an example interface of onlinedictionary program 20 when a word is being added from results displaylist 110 to word list 160. Word list 160 may be made public or private,and may commented on by an individual. If a word list is made public,public comments may be made on the words list. If a word list is madeprivate, only the user may comment on the word list. A user may makemore than one word list, but all users may have at least one defaultword list. A user may select the word list of the user to which to addthe word, or if no word list exists, create a new word list.

If a user hovers the pointer over a word in the results display list110, a link allowing the user to add the word to word list 160 may bedisplayed, as shown in FIG. 5. The displayed link may perform the samefunctionality described with respect to button 130. Clicking on the linkor using a keyboard shortcut may allow for the user to add the word tothe word list. The user may scroll through results display list 110 andadd additional words in the results display list 110 to word list 160.

The system and method of the present invention may also include anadvanced search function that may allow for a user to look up a word butrestrict the search of the word to those conforming to selectedattributes. FIG. 6. is a screen shot of an interface of an onlinedictionary program using the advanced search function. A user may clickon the “Advanced Search” tab on the interface of online dictionaryprogram 20. The “Advanced Search” tab may be located above resultsdisplay list 110, as depicted in FIGS. 2 and 3. By selecting specificattributes, the system and method may return words in results displaylist 110 that have been filtered in accordance with the selectedattributes. In an example embodiment, a user may change the attributesin the advanced search function before a user input is input into searchfield 100. Alternatively or additionally, a user may enter an input intosearch field 100 first, and then select the specific attributes.

In an example embodiment of the present invention, a user may restrictthe part of speech for the words generated in results display list 110.For example, the “Advanced Search” tab may include checkboxes for anoun, a verb, an adjective, and an adverb. A user may check one or moreof the part of speech boxes to restrict the generated words in resultsdisplay list 110 to the desired part(s) of speech.

In an example embodiment of the present invention, a user may restrictthe generated words in results display list 110 to be a synonym or anantonym of a certain word input in the “Advanced Search” tab. Radiobuttons may be selected to indicate whether the search is to berestricted to a synonym or an antonym. A user may select to restrict thesearch to a synonym or an antonym, and may input a word into an inputfield indicating the word of which the returned results are to besynonyms or antonyms.

In an example embodiment of the present invention, a user may restrictthe generated words in results display list 110 to those that include anumber of syllables that is within an input range. For example, the“Advanced Search” tab may include an input field for a user to set alower limit of the range and an input field for setting a higher limitof the range.

In an example embodiment of the present invention, a user may restrictthe generated words in results display list 110 to rhyme with an inputword. The “Advanced Search” tab may include an input field for a user toenter a word to rhyming words of which the results are restricted.

In an example embodiment of the present invention, a user may restrictthe generated words in results display list 110 to words starting with aparticular prefix or characters. The “Advanced Search” tab may includean input field for a user to enter characters that will restrict theresults to words that begin with the input prefix or characters.

In an example embodiment of the present invention, a user may restrictthe generated words in results display list 110 to words having aparticular definition. The “Advanced Search” tab may include an inputfield for a user to enter a partial definition, or a string that may befound in a definition, that will restrict the results to words that havea definition that contains the input words.

In an example embodiment of the present invention, a user may restrictthe generated words in results display list 110 to words that are of aparticular type or category. For example, a user may restrict theresults to words that of the category “art” or “tree” as shown in FIG.6. The “Advanced Search” tab may include an input field for a user tospecify a designated type category of which returned results must be.For example, where the user inputs “art” into the input field, resultsdisplay list 110 may contain such generated words as “picture” or“painting.”

In an example embodiment of the present invention, a user may restrictthe generated words in results display list 110 to words that are anexample of a designated word. For example, a user may restrict theresults to words that correspond to “president” or “river” as shown inFIG. 6. The “Advanced Search” tab may include an input field for a userto enter a designated word that will restrict the results to words thatare examples of the input word. For example, where the user inputs“river” into the input field, results display list 110 may contain suchgenerated words as “Nile” or “Ganges.”

In an example embodiment of the present invention, a user may restrictthe generated words in results display list 110 to words that make up apart of some other item. For example, a user may restrict the results towords that are parts of a “bicycle” or a “face” as shown in FIG. 6. The“Advanced Search” tab may include an input field for a user to enter aword that will restrict the results to words that are parts of the inputword. For example, where the user inputs “face” into the input field,results display list 110 may include such generated words as “nose,”“skin,” or “eyes.”

As shown in FIG. 6, the “Advanced Search” tab may include a combinationof such fields so that the user may cause the processor to restrict theresults by a plurality of factors.

The system and method of the present invention may allow for the user tocombine attributes in the advanced search function to restrict thegenerated results in results display list 110 based on the combinedattributes. For example, a user may select to restrict the results inresults display list 110 to words that are nouns and rhyme with “hair.”The system and method may generate words that meet these selectedattributes and return the results such as “stair,” “bear,” and “pear,”in results display list 110 that were filtered by the selectedattributes.

The above description is intended to be illustrative, and notrestrictive. Those skilled in the art can appreciate from the foregoingdescription that the present invention may be implemented in a varietyof forms, and that the various embodiments may be implemented alone orin combination. Therefore, while the embodiments of the presentinvention have been described in connection with particular examplesthereof, the true scope of the embodiments and/or methods of the presentinvention should not be so limited since other modifications will becomeapparent to the skilled practitioner upon a study of the drawings,specification, and following claims.

1. A computer-implemented method for predictively looking up words in anonline dictionary, the method comprising: responsive to user input of atext string, generating and outputting, by a computer processor, ascrollable list of words containing the text string, the words beingarranged in descending order of frequency of lookup in the onlinedictionary.
 2. The method of claim 1, the method further comprising:determining and outputting, by the computer processor, a word that isclosest alphabetically to the text string, the alphabetically closestword being added to the displayed portion of the list.
 3. The method ofclaim 2, wherein the alphabetically closest word is displayedimmediately beneath the scrollable list, the method further comprising:responsive to a user-input scroll instruction, dynamically updating adisplayed portion of the list to display different words of thescrollable list, the alphabetically closest word not being changed inresponse to the user-input scroll instruction.
 4. The method of claim 1,further comprising: responsive to selection of a word from thescrollable list, updating a frequency of lookup for the selected word.5. The method of claim 1, further comprising: filtering the list ofwords according to selected attributes by the user.
 6. The method ofclaim 1, further comprising: for each displayed word of the outputscrollable list, displaying a primary definition of the respective wordadjacent to the respective word; and displaying, in a separate sectionof a window in which the scrollable list is displayed, additionaldefinitions of a most frequently looked up word of the displayed words.7. The method of claim 1, further comprising: displaying, for a mostfrequently looked up one of displayed words of the scrollable list, aplurality of sentences including the most frequently looked up one ofthe displayed words, the plurality of sentences being obtained from aplurality of media sources, and being displayed in reverse chronologicalorder with respect to a time at which the sentences are obtained.
 8. Themethod of claim 1, further comprising: displaying, for a most frequentlylooked up one of displayed words of the scrollable list, a plurality ofsentences including the most frequently looked up one of the displayedwords, the plurality of sentences being obtained from a plurality ofmedia sources, and being displayed in reverse chronological order withrespect to at least one of a date and a time associated by the mediasources with the sentences.
 9. The method of claim 8, where thesentences obtained from the media sources are included in dated articlesof the media sources, the chronological order being based on the datesof the articles.
 10. The method of claim 1, further comprising:subsequent to the outputting of the scrollable list of words, receivinga character appended to the text string, forming an updated text string;responsive to the receipt of the appended character, dynamicallyupdating the displayed list to include words that contain the updatedtext string.
 11. The method of claim 1, further comprising: displaying ahierarchical representation of a word family of a displayed word of thescrollable list for which a greatest look up frequency, compared to allother displayed words of the scrollable list, is recorded.
 12. Themethod of claim 11, wherein the hierarchical representation includes aplurality of bars, one of the bars including a portion representing thedisplayed word for which the greatest look up frequency is selected, andeach of the remaining bars including an ancestor word of the displayedword for which the greatest look up frequency is recorded, each of theancestor words including a core text string from which the displayedword for which the greatest look up frequency is recorded, is formed.13. An online dictionary system for predictively looking up words, thesystem comprising: a computer processor configured to: responsive touser input of a text string, generating and outputting, by a computerprocessor, a scrollable list of words containing the text string, thewords being arranged in descending order of frequency of lookup in theonline dictionary.
 14. A computer-implemented method for outputting ahierarchically structured word family, the method comprising: assigning,by a computer processor, a selected word as a main word represented by aportion of a bar of a first hierarchical level; for each hierarchicallevel, beginning with the first hierarchical level until a root word isassigned to a respective bar: assigning, by the computer processor, aword that is an immediate parent of the main word of the respectivehierarchical level as a main word represented by a portion of a bar ofan immediately lower hierarchical level; and assigning, by the computerprocessor, to remaining portions of the bar of the immediately lowerhierarchical level, children of the word that is the immediate parent;and displaying, by the computer processor, the bars according to theassignments.
 15. The method of claim 14, wherein, for each of the barsto which more than one word is assigned, sizes of the respectiveportions of the bar to which the more than one word is assigned arebased on a differences in respective frequencies of occurrence ofrespective ones of the more than one word in a corpus of text.
 16. Themethod of claim 14, wherein the corpus of text includes text receivedfrom at least one online source.
 17. The method of claim 14, wherein theportions of the bars are selectable for changing which word is theselected word.
 18. The method of claim 17, further comprising:responsive to a selection of the selected word: if a definition isstored for the selected word, displaying the definition of the selectedword; and if a definition is not stored for the selected word:traversing one or more hierarchical word levels beginning with ahierarchical level that includes an immediate parent of the selectedword, for an ancestor word of the selected word for which a definitionis stored; and displaying the stored definition of the ancestor word.19. A hardware computer-readable medium having stored thereoninstructions executable by a processor, the instructions which, whenexecuted by the processor, cause the processor to perform a method forpredictively looking up words in an online dictionary, the methodcomprising: responsive to user input of a text string, generating andoutputting a scrollable list of words containing the text string, thewords being arranged in descending order of frequency of lookup in theonline dictionary.
 20. A hardware computer-readable medium having storedthereon instructions executable by a processor, the instructions which,when executed by the processor, cause the processor to perform a methodfor outputting a hierarchically structured word family, the methodcomprising: assigning a selected word as a main word represented by aportion of a bar of a first hierarchical level; for each hierarchicallevel, beginning with the first hierarchical level until a root word isassigned to a respective bar: assigning a word that is an immediateparent of the main word of the respective hierarchical level as a mainword represented by a portion of a bar of an immediately lowerhierarchical level; and assigning to remaining portions of the bar ofthe immediately lower hierarchical level, children of the word that isthe immediate parent; and displaying the bars according to theassignments.